load("//bazel:macros.bzl", "generated_cc_atom")
load("//bazel:cc_binary_with_flags.bzl", "cc_binary_with_flags")

cc_binary_with_flags(
    name = "hello_world",
    srcs = [
        "//example:HelloWorld_src",
    ],
    linkopts = [
        "-lX11",
        "-lxcb",
        "-lXau",
        "-lXdmcp",
        "-lGL",
    ],
    # These flags are defined in //bazel/common_config_settings/BUILD.bazel
    set_flags = {
        # Use the GL backend with the normal GL standard (as opposed to WebGL or GLES)
        "gpu_backend": [
            "gl_backend",
        ],
        "with_gl_standard": [
            "gl_standard",
        ],
        # Load fonts from the standard system directory (e.g. "/usr/share/fonts/")
        # as defined in //src/ports/SkFontMgr_custom_directory_factory.cpp
        "fontmgr_factory": [
            "custom_directory_fontmgr_factory",
        ],
    },
    deps = [
        "//:skia_core",
        "//src/utils:json_srcs",
        "//tools/sk_app",
    ],
)

# Everything below this line is autogenerated by gazelle using the C++ plugin built here:
# https://github.com/google/skia-buildbot/tree/main/bazel/gazelle/cpp
# These can be regenerated (if needed) by navigating to //bazel and running `make generate`
# =========================================================================================

generated_cc_atom(
    name = "HelloWorld_hdr",
    hdrs = ["HelloWorld.h"],
    visibility = ["//:__subpackages__"],
    deps = [
        "//tools/sk_app:Application_hdr",
        "//tools/sk_app:Window_hdr",
    ],
)

generated_cc_atom(
    name = "HelloWorld_src",
    srcs = ["HelloWorld.cpp"],
    visibility = ["//:__subpackages__"],
    deps = [
        ":HelloWorld_hdr",
        "//include/core:SkCanvas_hdr",
        "//include/core:SkFont_hdr",
        "//include/core:SkGraphics_hdr",
        "//include/core:SkSurface_hdr",
        "//include/effects:SkGradientShader_hdr",
    ],
)
